[第二週] 邏輯運算 位移運算子


|| OR, 我會把它當作加法看
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 1
1 可以看成是 true; 0 或空字串 可以看成是 false.

3 || 10 
// 輸出 3

false || 10
// 輸出 10

// 短路 OR, 只要第一個滿足 true, 後面就不再判斷。

&& AND, 我會把它看成是乘法
0 x 0 = 0
0 x 1 = 0
1 x 0 = 0
1 x 1 = 1

true && false
// 輸出 false

true && true 
// 輸出 true

10 && 3
// 輸出 3

// 如果兩個皆為 true, 輸出由後者決定
10 << 1
// 輸出20
// 往左移 1 位,表示 x 2

10 << 3
// 輸出80
// 往左移 3 位,表示 x 2 x 2 x 2

1024 >> 1
// 輸出512
// 往右移 1 位,表示 除以 2

9 >> 1
// 輸出4

在效能上, 10 << 1 會比 10 * 2 來得快







你可能感興趣的文章

Java 學習筆記 10 – 類別與物件 Part 3(方法重載 / 繼承 / 抽象)

Java 學習筆記 10 – 類別與物件 Part 3(方法重載 / 繼承 / 抽象)

SQL For Loop, Using Cursor

SQL For Loop, Using Cursor

Git cherry pick 實戰: 作業分支混到 master commit,但又不想洗掉自己作業的 commit 要怎麼辦?

Git cherry pick 實戰: 作業分支混到 master commit,但又不想洗掉自己作業的 commit 要怎麼辦?






留言討論